1. Field of Invention
The present invention relates to the transportation of data through dissimilar communications media. More particularly, the present invention relates to an apparatus and method for transporting data between a remote mobile or fixed terminal device and a host system over multiple, dissimilar communications media. The communications media over which the data is transported include wireless data links, wired data links or a combination of wireless and wired data links which are selected based upon a set of preference metrics.
2. Background Information
The ability to transport data between mobile and/or fixed terminal devices and host computer systems have been generally available for many years. Networks designed to transport this data currently exist in a wide variety of wireless and wired network architectures. Both apparatus and method exists for transporting data through multiple, similar media types as well as the automatic selection of alternate communication paths based upon a plurality of preference metrics.
Often, when multiple networks are available from a common location such as a vehicle, great benefit may be derived by allowing uniform communications through all available networks. Certain networks may perform better for bulk data transfers where another may perform interactive messaging in an optimal fashion. One network may be preferable because of its low cost but an alternate, more expensive network may be acceptable as a backup if the low-cost network is unavailable.
Other examples include U.S. Pat. No. 5,412,375, to WOOD, which discloses a system for selecting one of a plurality of interfaces to a single wireless communications system in accordance with the capabilities of a subscriber unit and the capabilities of a base unit. A list of air interface capabilities of the subscriber unit and the base unit are compared by a controller to determine a compatible interface. As disclosed in WOOD, the plurality of air interfaces include Analog Mobile Phone System (AMPS), Time Division Multiple Access (TDMA) and Code Division Multiple Access (CDMA). While the WOOD system does select from one of a plurality of interfaces which may be applicable for data communication, the routing decision is based on the capabilities of the endpoints rather than the preference metrics of the transporting networks. The endpoint devices, in this case, must be aware of the peculiarities of the wireless environment.
U.S. Pat. No. 5,420,574, to ERICKSON et al., discloses a subscriber unit attached to a trunked mobile radio having a data input. The mobile radio communicates both voice and data message formats over a wireless network to a base station via channels that are allocated by a trunked data controller which is connected to a host network. Channel states and communication parameters are set in accordance with the type of information (e.g., voice or data) that is being transmitted or received. While the ERICKSON et al. system dynamically switches between incompatible message formats without the intervention of the endpoint devices, only a single data path is provided. In addition, the incompatibility of the two alternate paths arises from a difference in message formats rather than the use of independent, incompatible networks.
Further, the transportation of data through alternate, incompatible communications media is a problem that does not have a uniform solution in the art. This problem is exacerbated in wireless communication networks where protocols, timing and other incompatibilities render an otherwise acceptable level of service inadequate. Attempts to provide data links through incompatible networks have suffered from the same obstacles that hindered data communications prior to open standards becoming widely accepted, i.e., proprietary protocols visible to the endpoint terminal devices make the devices inflexible and expensive and the interoperation of similar devices with incompatible networking components is difficult and complex.
Networks may be interconnected by routers which operate at the network level and convey messages between compatible networks. Routers make logical decisions about the pathway through which data is to be directed in the networks based upon a variety of preference metrics. A router is generally implemented as an autonomous device with multiple connections to the networks through which data is to be routed. Routers operate at the network layer and can recognize and manage protocols and multiple connections to networks. Routers usually operate in accordance with the address provided by the particular protocol of the network, and normally provide routing between and through networks utilizing the same network protocol and can route between networks that use different data-link layers, such as Ethernet, Token-Ring, Serial PPP, etc. Another type of router includes two routers loosely-coupled through a protocol-neutral data-link, where the linked routers are considered as a single xe2x80x9cvirtualxe2x80x9d router.
Dissimilar networks may be connected by gateways which are devices that interconnect two or more dissimilar networks. A gateway differs from a router in that the endpoint terminal devices may implement a dissimilar or incompatible protocols. Gateways often perform specific protocol conversions at the layers above the network layer to move data from one type of network to another. In this regard, the Open Systems Interconnection (OSI) model includes seven xe2x80x9clayersxe2x80x9d to provide communications between heterogeneous (i.e., incompatible) systems. The layers, from lowest to highest, are: the physical layer, the data link layer, the network layer, the transport layer, the session layer, the presentation layer, and the application layer. Each of the layers performs a specific task in transporting data between two or more entities. Such a layered structure is shown in The TCP/IP Companion, by Martin R. Arick, Wiley-QED, pp. 18-19.
U.S. patent application Ser. No. 08/456,860, to DOVIAK et al., for example, discloses a system in which a distant mobile or fixed terminal device transports data through a plurality of wireless network to an endpoint which may or may not implement the same network protocol as the distant device. However, while the DOVIAK et al. system is capable transmitting data over a plurality of dissimilar wireless communications networks, the system does not automatically transmit data through differing ones of a plurality of dissimilar networks in accordance with preference metrics to reach the data-link endpoints. Thus, the system does not automatically provide redundant or alternate pathways through which data may be delivered.
U.S. Pat. No. 5,537,220 to EZUMI et al., discloses a portable facsimile apparatus provided with a capability to communicate over a plurality of communications lines. As disclosed in EZUMI et al., the facsimile machine may communicate over telephone lines or a mobile communication unit. A NCU (controller) is provided within the facsimile machine to discriminate whether the facsimile machine is connected to the telephone line or to the mobile communication unit. The NCU functions to adjust the data rate, and transmitting and receiving signal levels based on which communication system it is communicating. Although this concept may be extended to a generic protocol-neutral data networking environment, the EZUMI et al. system provides for the selection of only one single path to the exclusion of other, possible viable path based solely on which link is plugged into the NCU. Further, the EZUMI et al. system does not switch communication paths within the boundaries of a communication session thereby further limiting its usefulness in a connectionless, packet data environment such as a TCP/IP network.
U.S. Pat. No. 5,602,843, to GRAY, discloses a PBX-based integrated telecommunications system having a wired subsystem connected to wired terminals, and a wireless system for connecting to mobile terminals. A controller is provided which manages base stations and communicates to wireless handsets. When communicating to a handset, the controller determines which base station is in communication with the handset and directs the base station to send packet-based information to that handset. A separate PBX controller is provided to communicate with the wired terminals. The PBX controller includes a proximity sensor to detect wireless handsets such that when a handset is detected in proximity to a wired terminal, messages are forwarded to the wired terminal rather than the wireless handset. While the GRAY system dynamically selects the route to a terminal device based upon a preference metric (wireless proximity), the alternate routing technique does not address transporting data between the same two endpoints. In addition, GRAY provides no means to provide alternate path routing for a terminal device through either the wireless or wired handsets.
U.S. Pat. No. 5,452,471, to LEOPOLD et al., discloses a communication system having a primary and one or more subordinate communication systems. In the illustrated embodiment, the primary communication system is a satellite-base communication system having the widest area of coverage. Each of the satellites within the system defines a cell area which moves as the orbiting satellites move. The secondary and tertiary communications systems are disclosed as terrestrial based, stationary systems having base stations fixed near the surface of the earth (e.g., fixed to a building), where each subordinate system has an increasingly smaller region of coverage. The secondary and tertiary systems include a controller located at a monitoring location within each region. Each of the communications systems includes a link to a central office to enable communications over the public switched telephone network. The LEOPOLD et al. communication systems and mobile subscriber units operate within one frequency spectrum, however, the primary and secondary communication systems operate together by using orthogonal channels to prevent interference. In addition, when communicating with secondary systems, the mobile subscriber unit transmits at a relatively low power such that the primary system will not receive the transmission. The mobile subscriber unit is programmed to utilize the communication system having the smallest area of coverage such that if the subscriber unit has three communications systems available, the subscriber unit will utilize the tertiary communications system (i.e., the system having the smallest area of coverage) based on a designed assumption that the more subordinate the communication system is, the higher the capacity of the system. While the system of LEOPOLD et al. dynamically selects a route based upon a set of preference metrics such that the terminal endpoints are unaware of the routing selection, a common data-link protocol is required throughout all possible associated networks. In addition, the wireless frequencies employed must be derived from a continuous, compatible set of frequencies which prevents the device from selecting among inherently incompatible networks.
Despite the teachings of these prior attempts, users of mobile or fixed wireless data communications are provided with systems of limited capacity and flexibility when routing data through more than one network. In addition, such systems require special hardware and/or software developed for and compatible with the networks, which may require additional training of support personnel and end-users. Further, users of wireless mobile data communication services are provided with only a limited ability to control costs associated with sending and receiving data to and from remote devices, and are limited in their hardware and software design implementations. In previous teachings, the candidate networks must be compatible with one another at either the network or the data-link level. Thus, routing data through inherently incompatible networks such as Cellular Digital Packet Data (CDPD) and Ericsson EDACS is not possible as these are incompatible at both the data-link and network levels. Moreover, known systems do not allow a customer to use existing RF wireless infrastructures, including existing hardware and software, with only minor modifications needed to transport data from a mobile device to a host computer network. In addition, past attempts do not permit wireless data communications in a manner that is transparent to the remote device. Further, prior systems do not provide the flexibility to users such that a plurality of different remote devices may communicate with the wired host network irrespective of the radio infrastructure and transmission protocol employed. Such features, without the above-noted drawbacks, would be highly desirable to provide flexibility and ease of use, and to give users of portable data devices greater control over their hardware and software design.
In view of the foregoing, the present invention, through one or more of its various aspects, embodiments and/or specific features or sub-components thereof, is thus presented to bring about one or more objects and advantages, such as those specifically noted below.
A general object of the present invention is to provide an apparatus and method for transporting data from a remote, wireless device to a wired network. Another object of the invention is to provide a remote device with an interface to present data to the wired network through RF wireless communication.
More particularly, an object of the present invention is to provide an apparatus that resides between an existing wired communications network and an existing radio-frequency network to provide a wireless RF connection between a remote device and the wired network.
Another object of the present invention is to provide an apparatus and method for a completely transparent data path between a remotely located device and an existing wired network using a wireless RF communications link without either the remote device, or the wired network being aware that a wireless RF communications link is being employed.
Still another object of the present invention is to provide an apparatus and method for a completely transparent data path between a remotely located device and an existing wired network through a plurality of different wireless RF communications link protocols and a plurality of different wired networks protocols selected by the user.
Still another object of the present invention is to provide an apparatus which functions as a protocol-appropriate communications controller and makes remote devices indistinguishable from locally attached devices to a wired network.
According to one aspect of the present invention, an apparatus for transporting data between a remote device and a host communication network using a wireless communications link is provided. The apparatus comprises a mobile data controller connected to the remote device and the wireless communications link. The mobile data controller comprises a remote data conversion means for converting data to be transported between the remote device and the host communication network. The remote data conversion means converts the transported data between a remote device transmission format utilized by the remote device and a wireless link transmission format utilized by the wireless communications link.
The apparatus also comprises a network interface means for interfacing the host communication network with the wireless communications link. The network interface means comprises a wireless link conversion means for converting the transported data between the wireless link transmission format and a network interface format utilized by the network interface means; and a host network conversion means for converting the transported data between the network interface format and a host network format utilized by the host communication network.
The apparatus further comprises a means for transporting the transported data over the wireless communication in accordance with the wireless link transmission format, the wireless link transmission format and the host network format being incompatible. According to another aspect of the present invention, the network interface means comprises a remote network controller that logically resides on the host communication network and performs the functions of a network communication controller.
According to another aspect of the present invention, the apparatus for transporting data further comprises a plurality of network interface means connected by a local network and a synchronization means for synchronizing the transfer of information between the network interface means, the information comprising routing tables and health and status information.
According to the present invention a method of transporting data from a mobile device to a host network is provided. The remote device and a wireless communications link are connected by a mobile data controller, and the host communication network and the wireless communications link being interfaced by a network interface device.
The method includes the steps of: converting, at the mobile data controller, data to be transported between the remote device and the host communication network, the converting step converting the transported data between a remote device transmission format utilized by the remote device and a wireless link transmission format utilized by the wireless communications link; transporting the transported data over the wireless communications link in accordance with the wireless link transmission format; receiving, at the network interface device, the transport data from the wireless communications link; converting, at the network interface device, the transported data between the wireless link transmission format and a network interface format utilized by the network interface device, the wireless link transmission format and the host network format being incompatible; further converting, at the network interface device, the transported data between the network interface format and a host network format utilized by the host communication network; and forwarding the transported data to the host communication network in accordance with the host network format.
In a preferred embodiment, the transportation step further comprises determining wireless communications link selection criteria; dynamically selecting a wireless communications link from a plurality of incompatible wireless communications links in accordance with the selection criteria; and switching to the selected wireless communications link. Afterwards, the following steps are continuously repeated: dynamically selecting a next wireless communications link from the plurality of incompatible networks in accordance with the selection criteria; determining whether to switch wireless communications links; and switching to the next wireless communications link in response to a result of the determination.
According to another aspect of the present invention, an apparatus for transporting data over a plurality of incompatible networks between a first device and a second device is provided. The apparatus comprises a system for determining network selection criteria. In addition, the apparatus comprises a selection system for dynamically selecting a network from the plurality of incompatible networks in accordance with the network selection criteria and a switching system for switching to the selected network to use for data transport.
According to another aspect of the present invention, the apparatus transports data via a plurality of protocols over a plurality of incompatible networks in which the transportation of data is transparent to the first and second devices and to an end user. The protocols may include but are not limited to Internet Protocol (IP) and transparent protocol.
According to another aspect of the present invention, the apparatus for transporting data further comprises a system interfacing protocolized data into a plurality of incompatible networks using different protocols.
According to another aspect of the present invention, the switching system switches networks during the time between the transport of consecutive data packets.
According to another aspect of the present invention, the system for determining network selection criteria uses two classes of parameters to determine the next network to use for transport of data.
According to another aspect of the present invention, the selection system further determines a next network to switch to from the plurality of incompatible networks in accordance with the network selection criteria, when the selected network becomes unavailable. In addition, a monitoring system is provided which monitors the availability of the incompatible networks to determine whether the next network is available for data transport.
According to yet another aspect, a method is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The method includes maintaining a priority of each wireless network. The priorities indicate a most preferred path. The method also includes determining availability of each wireless network based upon status information associated with each wireless network. The method also includes indicating a current most preferred network from the wireless networks determined to be available, the indication being based upon the network priorities. The method further includes switching from a current network, which is dissimilar from the current most preferred network, to the current most preferred network during a transmission. At least one of the current network and current most preferred network is time continuous. The method also includes remaining connected to the current network for a period of time after switching to the current most preferred network.
In another aspect, a computer readable medium storing a program is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The medium includes a priority code segment that maintains a priority of each wireless network. The priorities indicate a most preferred path. The method includes an availability code segment that determines availability of each wireless network based upon status information associated with each wireless network; and an indicating code segment that indicates a current most preferred network from the wireless networks determined to be available. The indication is based upon the network priorities. The medium further includes a switching code segment that switches from a current network, which is dissimilar at a link layer from the current most preferred network, to the current most preferred network during a transmission while remaining connected to the current network for a period of time after switching to the current most preferred network.
In yet another aspect, a router is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The router includes a priority system that maintains a priority of each wireless network, the priorities indicating a most preferred path. The router also includes multiple transmitters, each transmitter operating with one of the wireless networks. The router further includes a determining system that determines availability of each wireless network based upon status information associated with each wireless network, and an indicator that indicates a current most preferred network from the wireless networks determined to be available. The indication is based upon the network priorities. The router also includes a switch that switches from a current network, which is dissimilar from the current most preferred network, to the current most preferred network during a transmission while remaining connected to the current network for a period of time after switching to the current most preferred network.
In still another aspect, a computer readable medium is provided for storing a program for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The medium includes an availability code segment that ascertains availability of at least two of the wireless networks based upon the status information; and a determining code segment that determines whether to switch between networks when at least two networks are available, in response to a user configuration and each network""s speed. The medium also includes a switching code segment that switches from a first available network to a second available network, which is dissimilar at a link layer from the first available network, during a transmission while remaining connected to both the first network and the second network for a period of time.
In yet another aspect, a method is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The method includes ascertaining availability of at least two of the wireless networks based upon the status information; and determining whether to switch between networks when at least two networks are available, in response to a user configuration and each network""s speed. The method also includes switching from a first available network to a second available network during a transmission, the second network being dissimilar from the first network; and stopping transmitting over the first available network after switching to the second available network. The method further includes remaining connected to the first network for a period of time after switching to the second network.
In another aspect, a method is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The method includes determining availability of at least two of the wireless networks; and identifying a current most preferred network, when multiple wireless networks are determined to be available. The identification is based upon a speed of each available network. The method also includes switching from a current network, which is dissimilar at a link layer from the current most preferred network, to the current most preferred network during a transmission; and remaining connected to the current network for a period of time after switching to the current most preferred network.
In still another aspect, a mobile system includes a local device and a server. The local device may be a database server application, and resides on a local area network. The server is connected to the local device via the local area network, and connected to multiple incompatible wireless networks. The system also includes a mobile device connected to the incompatible wireless networks. The mobile device is associated with multiple transmitters, each transmitter operating with one of the dissimilar networks. The mobile device includes a client application that enables a remote user to send and retrieve data from the database server application via the server. The mobile device sends data to the database server application via at least two of the incompatible wireless networks while switching between the at least two incompatible wireless networks, and remains connected to the at least two incompatible wireless networks for a period of time after switching.
In still another aspect, a method is provided for dynamically routing data over multiple dissimilar parallel wireless networks that are each monitored for status information. The multiple wireless networks are simultaneously in coverage and each associated with a transmitter. The method includes maintaining a priority of each wireless network, the priorities indicating a most preferred network. The method further includes determining availability of each wireless network based upon status information associated with each wireless network, including determining if a previous network is available, and determining if a next network is available when the previous network is not available or is a lower priority than a current network. The method also includes indicating a current most preferred network from the wireless networks determined to be available. The indication is based upon the network priorities. The current most preferred network is the previous network when the previous network is available and the previous network is a higher priority than the current network, which is dissimilar at the link layer from the current most preferred network. The method further includes switching from the current network to the current most preferred network, which has a higher priority, during a transmission when the higher priority network becomes available. The method also includes interrupting transmitting over the current network after switching to the current most preferred network, and remaining connected to the current network for a period of time after switching to the current most preferred network.
In another aspect, a computer readable medium is provided for storing a program that enables switching between dissimilar wireless networks, at least one of the dissimilar networks being a GSM network connected between a server and a mobile device. The server is connected to a local device via a local area network. The medium includes an availability code segment that periodically checks the status of the dissimilar networks, including the GSM network; and a transmitting code segment. The transmitting code segment transmits an updated job status via the server to the local device to inform a dispatcher of locations of field service personnel. The updated status is transmitted via at least two of the dissimilar networks while switching between the at least two dissimilar networks when a second of the dissimilar networks is faster than a first of the dissimilar networks and when the second network has a higher priority than the first network. The mobile remains connected to the at least two dissimilar networks for a period of time after switching. The job status is updated by an application that also retrieves a list of jobs to be performed by field service personnel from the local device.
The above-listed and other objects, features and advantages of the present invention will be more fully set forth hereinafter.